package main

import (
	_ "tasktor/internal/packed"

	_ "github.com/gogf/gf/contrib/drivers/mysql/v2" // GoFrame v2.1 mysql驱动

	"tasktor/internal/cmd"
	"tasktor/library/liberr"

	"github.com/gogf/gf/v2/frame/g"
	"github.com/gogf/gf/v2/os/gcfg"
	"github.com/gogf/gf/v2/os/gctx"
)

func init() {
	ctx := gctx.New()
	env, err := g.Cfg().Get(ctx, "env.appStatus")
	liberr.ErrIsNil(ctx, err, "获取环境配置失败")

	// 定义环境配置文件
	g.Cfg().GetAdapter().(*gcfg.AdapterFile).SetFileName("config." + env.String() + ".yaml")

	// 判断配置文件是否存在，不存在将中断运行
	isExist := g.Cfg().GetAdapter().(*gcfg.AdapterFile).Available(ctx, "config."+env.String()+".yaml")
	if !isExist {
		g.Log().Panic(ctx, "config."+env.String()+".yaml 配置文件不存在")
	}
}

func main() {
	cmd.Main.Run(gctx.New())
}
